# -*- encoding: UTF-8 -*-

'''
Created on 27/12/2012

@author: jotagê
'''
import MySQLdb

class Cargo(object):
    """Classe destinada a fazer as operaçaões de banco de dados na tabela CARGO
    
    seus métodos sao:
    
    - consulta
    - inclui
    - imprime
    - exclui
    """
    
    def __init__(self):
        try:
            self.db = MySQLdb.connect(host='127.0.0.1',
                                      user='root',
                                      passwd='jotage2',
                                      db='folha')
        except Exception as e:
            print 'Ocorreu um erro ao tentar conectar a base de dados: \nMensagem Original: %s' %(str(e))
        
        self.cursor = self.db.cursor()
        self.sql=''

    def consulta(self):
        """Este médoto retorna uma tupla com os resultados da consulta"""

        try:
            self.sql='SELECT * FROM `folha`.`cargo` order by nome;'
            self.cursor.execute(self.sql)
            self.cargos= self.cursor.fetchall()
            self.db.close()
        except Exception as e:
            print 'Ocorreu um erro ao tentar processar a consulta:\nMensagem Original: %s' %(str(e))
        
        # retorna o resultado da consulta
        return self.cargos
    
    def inclui(self, nome_cargo):
        self.sql="INSERT INTO CARGO(nome) VALUES ('%s')" %(nome_cargo)
        try:
            self.cursor.execute(self.sql)
            self.db.commit()
            print ('Salvo com Sucesso !!!')
        except Exception as e:
            self.db.rollback()
            print 'ocorreu um erro ao tentar salvar: \nMensagem Original:\n\n%s' %(str(e))


    def imprime(self, lista):
        
        for item in lista:
            print item[1]
    

# instancia
